﻿using System.Threading.Tasks;
using Abp.Application.Services;
using Abp.Application.Services.Dto;
using JPW.OnlinePaperSubmissionSystem.Auditing.Dto;
using JPW.OnlinePaperSubmissionSystem.Dto;
using JPW.OnlinePaperSubmissionSystem.Project.Dto;
using Kendo.DynamicLinq;
namespace JPW.OnlinePaperSubmissionSystem.Project
{
    public interface IFilesAppService : IApplicationService
    {
        DataSourceResult KendoGetFiless(DataSourceRequest input);
        
        ListResultOutput<FilesListDto> GetFiless(GetFilesInput input);
        
        Task<ListResultOutput<FilesListDto>> GetFilessAsync();

        Task DeleteFiles(IdInput input);
        
        Task CreateOrUpdateFiles(CreateOrUpdateFilesInput input);
        
        Task CreateFilesAsync(CreateOrUpdateFilesInput input);
        
        Task UpdateFilesAsync(CreateOrUpdateFilesInput input);
        
        Task<GetFilesForEditOutput> GetFilesForEdit(NullableIdInput input);

        long InsertAndGetId(Files input);

        Files GetFileById(long input);
    }
}